//路由清单案例演示

var http = require("http");
var server = http.createServer((req,res) => {
    res.setHeader("Content-type","text/html; charset=UTF-8");
    if(req.url == "/"){
        res.end("首页");
    }else if(req.url == "/music.html"){
        res.end("音乐频道");
    }else if(req.url == "/news.html"){
        res.end("新闻频道");
    }else if(/^\/student\/[\d]{6}$/.test(req.url)){
        var reg = /\/student\/([\d]{6})/;
        //提取学号，使用exec函数，方括号1表示提取$1(索引)
        //http://ys.com:3000/student/365870  预览地址
        var xuehao = reg.exec(req.url)[1];

        //读取本地临时创建的json数据信息
        //开始创建文件读取方法并读取文件
        var fs = require("fs");
        fs.readFile("./db.json",(err,data) =>{
            if(err){
                res.end("文件读取失败");
                return;
            }

            //转换对象，注意用readFile读取进来的文件一定要转换格式为字符串
            var dataObj = JSON.parse(data.toString());
            //console.log(dataObj);

            //判断数据库中是否有该学生的信息
            if(dataObj.hasOwnProperty(xuehao)){
                res.write("<h1>学生信息:</h1>");
                res.write("<h1>学号:" + xuehao + "</h1>");
                res.write("<h1>姓名:" + dataObj[xuehao]["xingming"] + "</h1>");
                res.write("<h1>语文:" + dataObj[xuehao]["yuwen"] + "</h1>");
                res.write("<h1>数学:" + dataObj[xuehao]["shuxue"] + "</h1>");
                res.end("");
            }else{
                res.end("<h1>我们学校没有这个学号的学生</h1>");
                return;
            }
        });
    }else{
        res.end("对不起，没有您访问的页面");
    }
});


server.listen(3000);
console.log("服务器已经运行在3000端口");